1. Technical Field
The present disclosure relates to computer security and more specifically to preserving references in documents for use in a sandbox environment.
2. Introduction
Computer security is a critical aspect of the computing world. Many different industries, including the communication, entertainment, transportation, financial, and medical industries rely on computers. Computer security involves protecting these vital computing systems by preventing and detecting computer attacks. Attackers harm computing systems in different ways such as stealing passwords, issuing denial of service attacks and distributing malicious software such as viruses and worms.
Protecting computing systems from attackers is a challenging and ever changing task. An array of methods of protecting computing systems exists, from requiring users to change passwords frequently to employing complex cryptographic algorithms on a computing system. One method to protect a computing system is to sandbox a computer program to protect a computing system from a potentially malicious program. A sandbox is a mechanism utilized to separate a running computer program from other programs and/or computing resources. Some secure computing systems execute untrusted programs, or programs distributed by untrusted parties, in sandboxes. Sandbox restrictions limit the resources a computer program may access. An example of a sandbox environment is an applet that runs in a virtual machine or interpreter, such as Adobe® Flash® or Microsoft® Silverlight®.
Documents stored in exchange formats such as Portable Document Format (PDF) or Apple® Quicktime® can contain embedded references to other files. When a computing system does not trust such a file, it can sandbox the application that accesses the untrusted file. When these documents are opened with a sandboxed application, the application is unable to follow the references to other files due to the restrictions placed on the sandboxed application by the computing system. The inaccessibility of references to other documents in a sandboxed application can be frustrating for users. Inexperienced users may simply give up and have a bad impression of the computing platform, while more experienced or technically-minded users may attempt to circumvent the sandbox, thereby inadvertently causing a potentially serious security vulnerability. Users who desire additional information from references included in a document have no way to access these references in a sandboxed application.